Computer applications that utilize a relational (related) database for storing and accessing information relevant to that application are known. The relational databases are typically designed such that information can be stored in one file that `relates` to information stored in another file within the database structure. The database structure is used herein in a general sense where the databases may be comprised of files accessible over communication networks as well as locally. For example in such systems the database files may be those stored files accessible by any node on the network--the files need not be stored on the local memory of any particular hardware group. Information stored in related files permit rapid retrieval of more complex information than would otherwise be possible. Information stored in such a database provides a convenient method for users to retrieve information by typing in a query with knowledge of the underlying format. More often the user interfaces with a mouse-and-menu and completes a standard query without the user having any information on the underlying format.
A limitation of the mouse-and-menu method is that the user must point, click, drag, and type to excess to retrieve information from a database. For example, if a database contained logistical information in multiple files, it can be difficult and time consuming to access and sort through the multiple files looking for related information. In particular, if the user wanted to determine the supply level of a particular type of missile at a particular location being maintained by a particular military unit (an example of information retrieval from three sources) using the mouse-and-menu method, the user would need to search each of the three separate database files or tables, the first file containing the name of the missile; the second containing quantities of the missile at the various locations; and the third containing the military units responsible for maintenance at the locations.
More recently, spoken language recognition (voice activation) has been incorporated to make the searching easier to use, especially for complex databases. For example, the user no longer has to manually traverse multiple tables of an application database to find relevant information. The user could simply say, for example, "How many missiles are at the ammunition supply point for the air defense batteries?" However, a voice activated interface has a fixed vocabulary and a limited number of concepts (meaning); such a system does not have the full linguistic capabilities of a human. This limitation is broadened, with the incorporation of a large vocabulary recognition system into a voice activated application, where it is not obvious or intuitive to the user which queries an application may or may not accept, or where the system may not respond to in a meaningful fashion.
It is an object of the present invention to facilitate retrieving information from a relational database.
It is an object of the present invention to provide a user assistance or "help" function for assisting a user in staying within the vocabulary and semantics of a particular application system.
It is another object of the present invention to present sample clauses, phrases, and/or sentences to the user that relate to meaningful information within an application database.
Yet another object of the present invention is to accept lists of key words from a user and to provide automatically a set of clauses, phrases, and/or sentences related to key words within the vocabulary of the application.